In operation management of an IT (Information Technology) system, it is important to grasp configuration data of servers, software, devices, networks and so on, which configure the system. By collecting and storing the system configuration data in a configuration data database, the data can be used to determine a cause of a fault, analyze performance bottleneck, and manage availability. The configuration data database needs to hold data of the system components as well as data of dependency between the components.
In recent years, systems including the virtual server as a component have increased, and it is needed to manage configuration data of the system including the virtual server. The virtual server is generated and implemented according to a server virtualization function, and operates on the physical server in which the server virtualization function is installed. The virtual server is generally a VM (Virtual Machine) that functions as a server. A hypervisor and a VMM (Virtual Machine Monitor) are known as examples of the server virtualization function.
A system user and an application (Application software) that runs on the server can use the virtual server without recognizing a difference between the virtual server and the physical server. However, since an entity of the virtual server exists on a certain physical server, there is a dependency between the virtual server and the physical server. Accordingly, the configuration data management system requires a function of specifying the dependency between the virtual server and the physical server.
However, due to properties of the virtual server, the dependency between the virtual server and the physical server cannot be directly specified from the outside. Since the virtual server is configured to behave like the physical server, an OS (Operating System) and the application that runs on the virtual server cannot distinguish the virtual server from the physical server. Thus, the physical server that the virtual server depends on cannot be specified based on data collected from the OS and the application on the virtual server.
On the contrary, it is possible to grasp the virtual server that operates on the physical server on the basis of data of the server virtualization function of the physical server. However, the data of the virtual server, which is obtained through the server virtualization function, is data for specifying the virtual server within the server virtualization function, and the configuration data of the OS and the application, which operate on the virtual server, cannot be referred. Although there is means adapted to collect data by logging in the virtual server, a user account of the OS operating on the virtual server is necessary. Since log-in means are different depending on the OS operating on the virtual server, automated log-in is difficult and further, is undesirable in terms of security. Consequently, it is also difficult to specify the OS and an application program, which operate on the virtual server, on the basis of data collected from the physical server.
In operation management of a system configured of a plurality of physical servers and virtual servers, the server virtualization function is managed in an integrated manner. Thus, a technique such as a server virtualization integrated management function described in Non-Patent Literature 1 is utilized. According to the server virtualization integrated management function described in Non-Patent Literature 1, by recording all of operations executed on the server virtualization function, including start and stop of the virtual server and migration (transfer and conversion of programs and data), it is possible to grasp which virtual server currently operates on which physical server.
However, according to the conventional method such as the server virtualization integrated management function described in Non-Patent Literature 1, all operations related to the virtual machine must be executed through the server virtualization integrated management function. Also, when an operation of the virtual machine is executed without using the server virtualization integrated management function or when another virtual server is added through integration with another system, an operation of newly setting to the server virtualization function is required. Moreover, this operation is troublesome when the executed operation is complicated or many physical servers or virtual servers are added/removed. Furthermore, since the server virtualization integrated management function collect only configuration data of a specific server virtualization function, data of the virtual server generated by the other server virtualization function cannot be managed.
In summary, the conventional methods have following problems.
A first problem is in that, in the configuration data management, the data collected from the virtual server and the data collected from the physical server cannot be related with each other according to the dependency. The reason is in that the data of the physical server cannot be collected from the virtual server and data of the OS and so on in the virtual server cannot be collected from the physical server.
A second problem is in that there is no means for automatically grasping the dependency between the virtual server and the physical server that is not under control of the server virtualization integrated management function. The reason is in that start, stop, and migration of the virtual server that is not under control of the server virtualization integrated management function are not recorded in the server virtualization integrated management function, and therefore, the dependency between the virtual server and the physical server cannot be obtained through the server virtualization integrated management function.
A third problem is in that it is difficult to identify the physical server on which the specific virtual server operates, at the moment after generation, omission, or migration of the virtual server is repeatedly executed without using the server virtualization integrated management function. The reason is in that there is no means for relating the data collected from the virtual server with the data collected from the physical server, and therefore, it is needed to follow the execution history of generation, omission, and migration of the virtual server.
As a related technique, JP 2008-242766A (Patent Literature 1) discloses a process control system. According to the related technique, in the process control system in which the virtual server offering services is configured of the plurality of physical servers, at least one physical server receives node listing data that relates a virtual server with a physical server configuring the virtual server and service listing data that relates the virtual server with the services offered by the virtual server from a console terminal, and generates an allocation table that defines allocation of the services to the physical server. The allocation table as an allocation table which is referred when the physical servers activate a service process is registered in a database server common database that can be referred to from all of the physical servers.
JP 2008-059599A (Patent Literature 2) discloses a virtualized resource allocating method and its execution system. In case of a computer, the resource is a general term for various resources (hardware resources) for satisfactorily operating the computer, such as a memory and a CPU. According to the related technique, in a method of arranging a program in a resource suited to its operating conditions, management data indicating performance and capacity of each resource is collected and managed, configuration management data of each resource is maintained and managed with reference to the management data, the configuration management data containing identification data of the resource used by each task application is referred to read the configuration management data identified based on the identification data from the configuration management data of each resource. Consequently, task application data is generated by relating the configuration management data of a task application with the configuration management data of the searched resource. When the configuration management data of the resource is applicable to a rule for detecting a resource failure in the corresponding task application, data indicating that the resource failure occurs in the task application is outputted.
JP 2007-272263A (Patent Literature 3) discloses a computer managing method, a computer system and a management program. According to the related technique, in the computer managing method in a computer system including a plurality of physical computers, a plurality of virtual computers that operate on the physical computers, and a managing computer connected to the physical computers through a network, designation of a processing performance allocated to each group is received, the processing performances of the physical computers are collected, and the processing performance of the designated group is allocated to the virtual computers that belong to the group, based on the collected processing performances of the physical computers.
JP 2006-519423U (Patent Literature 4) discloses a dynamic service registry for a virtual machine. According to the related technique, in a conventional registry such as a global UDDI (Universal Description, Discovery, and Integration) server, in order to handle a device that is often connected/disconnected to/from a network without any prior notice, for example, a transient device such as a virtual machine that is instantaneously generated and suspended or discarded in a repeated manner, a dynamic resource/service registry is implemented, which reinforces a protocol or a state in a lower level and determine a suitable registry updating, thereby matching the registry state with the active virtual machine at that moment. For example, a virtual machine monitor (VMM) tracks generation, suspension, or omission of the virtual machine (VM), and a resource exposed by the VM. Here, the VMM properly adds or deletes a registry item of the VM according to change of the state of the VM, or offers hook (for example, notification) or other tool based on the state or the protocol such that other related modules and agents (for example, a managing module and registry) can properly behave.